package cn.sccdlg.mybatis2.dao;

import cn.sccdlg.mybatis2.domain.QueryVo;
import cn.sccdlg.mybatis2.domain.SysUser;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * @author RaoShuang
 * @emil 991207823@qq.com
 * @date 2020/10/14 21:49
 * 用户的DAO层接口
 */
@Mapper
public interface IUserDao {

    /**
     * 根据传入参数条件 采取 where 1=1 + <if>标签
     * @param user 查询的条件：有可能有用户名，有可能有性别，也有可能有地址，还有可能是都有
     * @return
     */
    List<SysUser> findUserByCondition(SysUser user);

    /**
     * 根据传入参数条件 采取<where>标签简化 where 1=1
     * @param user 查询的条件：有可能有用户名，有可能有性别，也有可能有地址，还有可能是都有
     * @return
     */
    List<SysUser> findUserByCondition2(SysUser user);

    /**
     * 根据queryvo中提供的id集合，查询用户信息
     * @param vo
     * @return
     */
    List<SysUser> findUserInIds(QueryVo vo);

}
